package rim;

import java.util.ArrayList;
import java.util.List;

import javax.persistence.ManyToMany;

import datatypes.r2.basic.CS;
import datatypes.r2.basic.TEL;

/**
 * Definition of CommunicationFunction:
 * 
 * A relationship class that binds the various entities participating in the
 * transmission (sender, receiver, respond-to) to be linked to the transmission.
 * 
 * 关系类，结合各实体参与在传输（发送，接收，回应）链接到传输。
 * 
 * 
 * @author Obama
 * 
 */
public class CommunicationFunction extends InfrastructureRoot {

	private static final long serialVersionUID = 1L;
	/**
	 * Definition: The role of an entity with respect to the transmission.
	 * 
	 * 传输方面的一个实体的作用。
	 * 
	 * 
	 * Examples:
	 * 
	 * Sender, receiver, respond-to party
	 * 
	 * 发送者，接收者，回应的一方
	 */
	private CS typeCode;
	/**
	 * Definition: The telecomm address that can be used to reach the entity in
	 * the identified role.
	 * 
	 * 电信地址，可以用来达到在确定角色的实体。
	 */
	private TEL telecom;
	@ManyToMany
	private List<Entity> entity = new ArrayList<Entity>();
}
